<?xml version="1.0" encoding="utf-8"?>
<xs:schema id="SocketClientConfig" targetNamespace="http://myspace.com/SocketClientConfig.xsd" elementFormDefault="qualified" xmlns="http://myspace.com/SocketClientConfig.xsd" xmlns:mstns="http://myspace.com/SocketClientConfig.xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema">
	<xs:complexType name="SocketClientConfig">
		<xs:sequence>
			<xs:element name="UseSharedBufferPool" type="xs:boolean" minOccurs="0" maxOccurs="1" nillable="true" default="false" />
			<xs:element name="SharedPoolMinimumItems" type="xs:int" minOccurs="0" maxOccurs="1" nillable="true" default="0"/>
      <xs:element name="DefaultSocketSettings" type="SocketSettings"/>
    </xs:sequence>
		<xs:attribute name="type" type="xs:string" />
	</xs:complexType>
	<xs:element name="SocketClient" type="SocketClientConfig">
	</xs:element>
	<xs:simpleType name="PoolType">
		<xs:restriction base="xs:string">
			<xs:enumeration value="Array" />
			<xs:enumeration value="Null" />
			<xs:enumeration value="Linked" />
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="SocketSettings">
		<xs:sequence>
			<xs:element name="SocketPoolType" type="PoolType" default="Linked" nillable="true" />
			<xs:element name="SocketPoolSize" type="xs:int" nillable="true" />
			<xs:element name="ConnectTimeout" type="xs:int" nillable="true"/>
			<xs:element name="InitialMessageSize" type="xs:int" />
			<xs:element name="MaximumReplyMessageSize" type="xs:int" />
			<xs:element name="ReceiveBufferSize" type="xs:int" />
			<xs:element name="ReceiveTimeout" type="xs:int" />
			<xs:element name="SendBufferSize" type="xs:string" />
			<xs:element name="SendTimeout" type="xs:int" />
			<xs:element name="SocketLifetimeMinutes" type="xs:int" />
			<xs:element name="UseNetworkOrder" type="xs:boolean" />
			<xs:element name="BufferReuses" type="xs:int" />
			<xs:element name="RequestOneWayAck" type="xs:boolean" minOccurs="0"/>
			<xs:element name="RequestServerCapabilities" type="xs:boolean" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
</xs:schema>